package testplan.guice;

import com.google.inject.AbstractModule;
import com.google.inject.Guice;
import com.google.inject.Injector;

/**
 * The Guice injector for the project.
 * The mock injector provides mocking objects.
 */
public class TestPlanInjector 
{
	private TestPlanInjector() 
	{
	}
	
	// real implementation 
	private static Injector injector = Guice.createInjector(
			new ServiceModule()
	);

	public static Injector get()
	{
		return injector;
	}
	
	// mocking implementation
	private static Injector mockInjector = Guice.createInjector(
			new MockServiceModule()
	);
	
	public static Injector getMockInjector()
	{
		return mockInjector;
	}

}
